import express from 'express';
import { PermissionController } from '../controllers/permissionController.js';
import { authenticateToken } from '../middleware/auth.js';

const router = express.Router();
const permissionController = new PermissionController();

// 调试日志
console.log('权限路由模块已加载');

// 所有路由都需要认证
router.use(authenticateToken);

// 获取当前用户权限（所有登录用户都可以）
router.get('/me', permissionController.getCurrentUserPermissions.bind(permissionController));

// 以下路由需要管理员权限（在controller中可以根据需要添加权限检查）
// 获取所有角色
router.get('/roles', (req, res, next) => {
    console.log('接收到 /roles 请求');
    next();
}, permissionController.getRoles.bind(permissionController));

// 获取所有权限
router.get('/permissions', (req, res, next) => {
    console.log('接收到 /permissions 请求');
    next();
}, permissionController.getPermissions.bind(permissionController));

// 获取角色权限
router.get('/roles/:roleId/permissions', permissionController.getRolePermissions.bind(permissionController));

// 批量更新角色权限
router.put('/roles/permissions', permissionController.updateRolePermissions.bind(permissionController));

export default router;

